86 research outputs found

    AsmetaF: A Flattener for the ASMETA Framework

    Get PDF
    Abstract State Machines (ASMs) have shown to be a suitable high-level specification method for complex, even industrial, systems; the ASMETA framework, supporting several validation and verification activities on ASM models, is an example of a formal integrated development environment. Although ASMs allow modeling complex systems in a rather concise way -and this is advantageous for specification purposes-, such concise notation is in general a problem for verification activities as model checking and theorem proving that rely on tools accepting simpler notations. In this paper, we propose a flattener tool integrated in the ASMETA framework that transforms a general ASM model in a flattened model constituted only of update, parallel, and conditional rules; such model is easier to map to notations of verification tools. Experiments show the effect of applying the tool to some representative case studies of the ASMETA repository.Comment: In Proceedings F-IDE 2018, arXiv:1811.09014. The first two authors are supported by ERATO HASUO Metamathematics for Systems Design Project (No. JPMJER1603), JST. Funding Reference number: 10.13039/501100009024 ERAT

    Exploiting the ASM method within the Model-driven Engineering paradigm

    Get PDF
    Model-driven Engineering (MDE) is an emerging approach for software development. It uses metamodels to define language (or formalism) abstract notation, so separating the abstract syntax and semantics of the language from their different concrete notations. However, metamodelling frameworks lack of a way to specify the semantics of languages, which is usually given in natural language. We claim that the MDE paradigm can gain rigor and preciseness from the integration with formal approaches, and we propose the integration with the ASMs to define a unified methodology for metamodel-based language syntax and semantics definitions

    Coordinated Execution of Heterogeneous Service-Oriented Components by Abstract State Machines

    Get PDF
    Abstract. Early design and validation of service-oriented applications is hardly feasible due to their distributed, dynamic, and heterogeneous nature. In order to support the engineering of such applications and discover faults early, foundational theories, modeling notations and analysis techniques for component-based development should be revisited. This paper presents a formal framework for coordinated execution of serviceoriented applications based on the OSOA open standard Service Component Architecture (SCA) for heterogeneous service assembly and on the formal method Abstract State Machines (ASMs) for modeling notions of service behavior, interactions, and orchestration in an abstract but executable way. The proposed framework is exemplified through a Robotics Task Coordination case study of the EU project BRICS

    Using SMT for dealing with nondeterminism in ASM-based runtime verification

    Get PDF
    In runtime verification, operational models describing the expected system behavior offer some advantages with respect to declarative specifications of properties, especially when designers are more accustomed to them. However, nondeterminism in the specification usually affects performances of those operational methods that explicitly represent all the possible conformant states. In this paper, we tackle the problem of dealing with nondeterminism in an operational runtime verification approach based on the use of Abstract State Machines (ASMs). We propose an SMT-based technique in which ASM computations are symbolically represented and conformance verification is performed by means of satisfability checking. Experiments show that, in most of the cases, the symbolic approach performs better than a technique for ASM-based runtime verification explicitly representing the conformant states

    A formal specification of PARLOG

    No full text
    We provide a complete mathematical semantics for the parallel logic programming language PARLOG. This semantics is abstract but nevertheless simple and supports the intuitive operational understanding of programs. It is based on Gurevich's notion of Evolving Algebras ([20]) and is obtained adapting ideas from the description of full (Sequential) Standard PROLOG in [5] and the specification of imperative parallel computation phenomena of OCCAM developed in [24]. We develope a complete specification of the core of PARLOG which governs the computation of goals by user defined predicates. The built-in predicates can be described as for Standard PROLOG (see [4]-[6]) and are therefore omitted here. We give an explicit formalization of the two kinds of parallelism occurring in PARLOG: the AND-Parallelism and the (orthogonal) OR-Parallelism. Our description uses an abstract notion of PARLOG terms and PARLOG substitutions which is unburdened by representation details and implementation constraints

    Formal Analysis of the Kerberos Authentication System

    No full text
    The Gurevich's Abstract State Machine formalism is used to specify the well known Kerberos Authentication System based on the Needham-Schroeder authentication protocol. A complete model of the system is reached through stepwise refinements of ASMs, and is used as a basis both to discover the minimum assumptions to guarantee the correctness of the system and to analyse its security weaknesses. Each refined model comes together with a correctness refinement theorem
    • …
    corecore